Add correct const-ness to memshr tool functions
authorAndres Lagar-Cavilla <andres@lagarcavilla.org>
Tue, 10 Jan 2012 15:38:08 +0000 (15:38 +0000)
committerAndres Lagar-Cavilla <andres@lagarcavilla.org>
Tue, 10 Jan 2012 15:38:08 +0000 (15:38 +0000)
This patch addresses some of the compile and link issues with the memshr
module.

Signed-off-by: Adin Scannell <adin@scannell.ca>
Signed-off-by: Andres Lagar-Cavilla <andres@lagarcavilla.org>
Acked-by: Ian Jackson <ian.jackson.citrix.com>
Committed-by: Ian Jackson <ian.jackson.citrix.com>
tools/blktap2/drivers/Makefile
tools/blktap2/drivers/tapdisk.h
tools/memshr/interface.c
tools/memshr/memshr.h
tools/memshr/shm.c
tools/memshr/shm.h

index 405d2d3e94dbd329bb53d990a61a3cede602cff2..15e1bc0df801cff2c3ecbfb4ecad4e36c161f547 100644 (file)
@@ -43,7 +43,7 @@ MEMSHR_DIR = $(XEN_ROOT)/tools/memshr
 MEMSHRLIBS :=
 ifeq ($(CONFIG_Linux), __fixme__)
 CFLAGS += -DMEMSHR
-MEMSHRLIBS += $(MEMSHR_DIR)/libmemshr.a
+MEMSHRLIBS += -L$(XEN_ROOT)/tools/libxc -lxenctrl $(MEMSHR_DIR)/libmemshr.a
 endif
 
 ifeq ($(VHD_STATIC),y)
index f945fbfe648dbd0134818b766321fdc16455e9d1..c7013d7ccd46d4a8d282fa044484869c8468c018 100644 (file)
 #include "tapdisk-log.h"
 #include "tapdisk-utils.h"
 
+#ifdef MEMSHR
+#include "memshr.h"
+#endif
+
 #define DPRINTF(_f, _a...)           syslog(LOG_INFO, _f, ##_a)
 #define EPRINTF(_f, _a...)           syslog(LOG_ERR, "tap-err:%s: " _f, __func__, ##_a)
 #define PERROR(_f, _a...)            EPRINTF(_f ": %s", ##_a, strerror(errno))
index a61715ad7c571d5175aa7ac19007ca11207996e2..91cf7c6c1a5ab40ff70aee55fd1895286c9d90d7 100644 (file)
@@ -123,7 +123,7 @@ void memshr_vbd_initialize(void)
     vbd_info.enabled = 1;
 }
 
-uint16_t memshr_vbd_image_get(char* file)
+uint16_t memshr_vbd_image_get(const char* file)
 {
     uint16_t id;
 
index 619174adafec0b08673b869bbe8a5c87161f19df..24dd04c4f3fb9dfaccdb468a470286c724f215f0 100644 (file)
@@ -28,7 +28,7 @@ typedef uint64_t xen_mfn_t;
 extern void memshr_set_domid(int domid);
 extern void memshr_daemon_initialize(void);
 extern void memshr_vbd_initialize(void);
-extern uint16_t memshr_vbd_image_get(char* file);
+extern uint16_t memshr_vbd_image_get(const char* file);
 extern void memshr_vbd_image_put(uint16_t memshr_id);
 extern int memshr_vbd_issue_ro_request(char *buf,
                                        grant_ref_t gref,
index 34a6a1aa951571409eb13f1d4674c1d3d00f64ec..c925cf26ac0e5b5c2a932e8121f9731491922350 100644 (file)
@@ -187,7 +187,7 @@ struct blockshr_hash * shm_blockshr_hash_open(int unlink)
     return h;
 } 
 
-uint16_t shm_vbd_image_get(char* file, vbd_image_info_t *vbd_imgs)
+uint16_t shm_vbd_image_get(const char* file, vbd_image_info_t *vbd_imgs)
 {
     vbd_image_info_t *img, *next_img;
     int i, img_id;
index 0acff14aafb11ba69d38e46f9784bea5d6f7cbff..3ce675858e6e2e1a25d2e6155fd21571b21f4936 100644 (file)
@@ -44,7 +44,7 @@ typedef struct shared_memshr_info {
 shared_memshr_info_t * shm_shared_info_open(int unlink);
 struct fgprtshr_hash * shm_fgprtshr_hash_open(int unlink);
 struct blockshr_hash * shm_blockshr_hash_open(int unlink);
-uint16_t shm_vbd_image_get(char* file, vbd_image_info_t *vbd_imgs);
+uint16_t shm_vbd_image_get(const char* file, vbd_image_info_t *vbd_imgs);
 void     shm_vbd_image_put(uint16_t memshr_id, vbd_image_info_t *vbd_imgs);
 
 #endif /* __SHM_H__ */